Evgenii
Berkus
Ivan
может он в Си компилирует, там нет параметров по умолчанию
Ivan
ну да, так и есть
Pavel
void Data2Buffer(char* macro, int v1, int v2, int v3, int v4, int v5, char* str, int send) {
Передавай структурой, а все параметры полями, и фугкцию сделай для ее заполнения по умолчания, вызвал функцию, заполнилось по умолчанию, потом заполняй своими значения нужные поля
Крылатый
Вакансии к @AlexFails
Крылатый
Читайте аравила чата
Rustam
хорошо, прочту, это не совсем вакансия, скорее проект)
Viacheslav
не, низя, он в середине иерархии наследований
Не совсем понимаю, как это на иерархию наследования влияет. Я понимаю это примерно так.
Было: https://ideone.com/2tbKOV
Стало: https://ideone.com/RT50wS
Дочерние классы видят ведь то же самое, что и было.
gboost
По константой ссылке простые типы данных не передаёте?
Evgenii
gboost
Evgenii
gboost
Evgenii
gboost
Evgenii
Evgenii
Памяти
регистры на что придумали?
Evgenii
Evgenii
обычно этому в универе учат
gboost
У меня пробел 2 года. Не помню
Pavel
void test_1(const int& test) {
}
void test_2(int test) {
}
int main() {
int a = 1;
test_1(a);
test_2(a);
}
Тест
Pavel
; Function Attrs: noinline nounwind
define void @_Z6test_1RKi(i32* dereferenceable(4) %test) #0 {
%test.addr = alloca i32*, align 8
store i32* %test, i32** %test.addr, align 8
ret void
}
; Function Attrs: noinline nounwind
define void @_Z6test_2i(i32 %test) #0 {
%test.addr = alloca i32, align 4
store i32 %test, i32* %test.addr, align 4
ret void
}
; Function Attrs: noinline norecurse nounwind
define i32 @main() #1 {
%a = alloca i32, align 4
store i32 1, i32* %a, align 4
call void @_Z6test_1RKi(i32* dereferenceable(4) %a)
%1 = load i32, i32* %a, align 4
call void @_Z6test_2i(i32 %1)
ret i32 0
}
Байткод
Evgenii
Pavel
4 байта на стеке съэкономили
Pavel
Ivan
https://godbolt.org/g/8Wo1BH вообще одинаково gcc7.1
Vladislav
Evgenii
gboost
Так в современных компиляторах оптимизатор к ссылке приводит аргумент функции?
Ivan
У меня пробел 2 года. Не помню
https://godbolt.org/g/ecpn2A а вот когда будешь использовать переданный аргумент то, будет чуть дороже, потому что компилятор за тебя при использовании разыменует: *myIntArgument; примитивные дешевле проще копировать, когда ты передаёшь по ссылке ты передаешь размер указателя платформы (32 или 64 бита)
Evgenii
H1
Если кто знает, Дайте пожалуйста ссылки или названия книг, где можно подробно про вебсокеты и с++ почитать
H1
Оу, я видимо не в тот чат написал, уже исправился
Vladislav
/warn Читайте правила чата
Олександр
@AlexFails
Berkus
; Function Attrs: noinline nounwind
define void @_Z6test_1RKi(i32* dereferenceable(4) %test) #0 {
%test.addr = alloca i32*, align 8
store i32* %test, i32** %test.addr, align 8
ret void
}
; Function Attrs: noinline nounwind
define void @_Z6test_2i(i32 %test) #0 {
%test.addr = alloca i32, align 4
store i32 %test, i32* %test.addr, align 4
ret void
}
; Function Attrs: noinline norecurse nounwind
define i32 @main() #1 {
%a = alloca i32, align 4
store i32 1, i32* %a, align 4
call void @_Z6test_1RKi(i32* dereferenceable(4) %a)
%1 = load i32, i32* %a, align 4
call void @_Z6test_2i(i32 %1)
ret i32 0
}
Байткод
в SSA будет естественно больше использоваться, т.к. нельзя переиспользовать переменные, но на финальный асм это мало похоже
Berkus
/ban
Anton
Anonymous
мне интересно, на что такие люди надеятся?
Anonymous
ну я про того что забанили
🦥Alex Fails
А хз
Anonymous
понятно же, что-либо продвигаемое таким образом вызывает огромное сомнение
Olesya
всем привет. ищу на плюсах удобные инструменты для работы с разреженными матрицами, а также классификаторы, в которые их можно пихнуть. пока нашла (отдельно) boost SparceMatrix, AlgLib (вроде как можно классификаторам скармливать разреженные матрицы, но пока не разобралась детально), xgboost (не работает с сжатыми матрицами), vowpal rabbit. мож, у кого ещё есть что-нибудь под рукой или кто-то что-то использовал? (да, я знаю, что всё есть на питоне, да, я знаю, что именно есть на питоне, да, мне точно надо на плюсах).
Pepe 🐸
всем привет. ищу на плюсах удобные инструменты для работы с разреженными матрицами, а также классификаторы, в которые их можно пихнуть. пока нашла (отдельно) boost SparceMatrix, AlgLib (вроде как можно классификаторам скармливать разреженные матрицы, но пока не разобралась детально), xgboost (не работает с сжатыми матрицами), vowpal rabbit. мож, у кого ещё есть что-нибудь под рукой или кто-то что-то использовал? (да, я знаю, что всё есть на питоне, да, я знаю, что именно есть на питоне, да, мне точно надо на плюсах).
Eigen?
Olesya
Eigen?
о, я про него и забыла
Olesya
спс)
Anonymous
всем привет. ищу на плюсах удобные инструменты для работы с разреженными матрицами, а также классификаторы, в которые их можно пихнуть. пока нашла (отдельно) boost SparceMatrix, AlgLib (вроде как можно классификаторам скармливать разреженные матрицы, но пока не разобралась детально), xgboost (не работает с сжатыми матрицами), vowpal rabbit. мож, у кого ещё есть что-нибудь под рукой или кто-то что-то использовал? (да, я знаю, что всё есть на питоне, да, я знаю, что именно есть на питоне, да, мне точно надо на плюсах).
https://stackoverflow.com/a/2222983/827704
Olesya
Olesya
https://github.com/mabur/gal оно?
Anonymous
Как сделать функцию, возвращающую указатель на метод класса?
#include <iostream>
using namespace std;
class Member {
public:
void* Output() {
return &pointer;
}
private:
int *pointer;
};
void FunOut(int (Member::*Everything) ()) {
(*this.*Everything)();
}
int main()
{
return 0;
}
Дмитрий
сам по себе pointer это уже адрес. Не думаю что знак & тут к месту.
Anonymous
Да я даже на это не обращаю внимания, мне именно важна функция:
void FunOut(int (Member::*Everything) ()) {
(*this.*Everything)();
}
Anonymous
Оан у меня ошибку выдает
Anonymous
Хотя..
Anonymous
Блэт
Anonymous
Чушь какая-то
Anonymous
Ну и как тогда мне реализовать функцию, возвращающую мне указатель на метод класса?
Anonymous
Мне нужно сделать функцию, которая возвращает указатель на метод класса..
Anonymous
И всего-то
Anonymous
мембера
Egor
🦥Alex Fails
Anonymous
По учебнику учусь, вот-с, "указатели на элементы классов" тема..
Evgenii
Evgenii
кстати
Evgenii
а
template <class T>
auto get_member() {
return &T::fn;
}
можно?
Egor
Я ничего криминального не вижу
Evgenii
просто все еще не до конца понимаю когда можно выводить return type
Anonymous
Anatoly
Berkus
Anonymous
Anatoly
Anonymous
Ну мне компилятор выдает ошибки C2039 и C2065