Size: a a a

IT KPI C/C++ ХВ (не UB)

2020 August 02

YS

Y S in IT KPI C/C++ ХВ (не UB)
Или это часть типа?
источник

JC

Julian =) Coffee in IT KPI C/C++ ХВ (не UB)
может это какой-то указатель на функцию так написан, или как там они пишутся🤔
источник

A

András in IT KPI C/C++ ХВ (не UB)
Y S
Что это между типом функции и её названием?
Уб
источник

A

András in IT KPI C/C++ ХВ (не UB)
Або implementation defined, точно не пам'ятаю
источник

G

Gerda in IT KPI C/C++ ХВ (не UB)
Till Schneider
Если порядок элементов в векторе не важен будет, то удалить из середины можно тоже за O(1)
=)
В каком смысле?
источник

JC

Julian =) Coffee in IT KPI C/C++ ХВ (не UB)
Till Schneider
Если порядок элементов в векторе не важен будет, то удалить из середины можно тоже за O(1)
=)
🤔
источник

JC

Julian =) Coffee in IT KPI C/C++ ХВ (не UB)
а как это
источник

JC

Julian =) Coffee in IT KPI C/C++ ХВ (не UB)
а, бля, лол
источник

JC

Julian =) Coffee in IT KPI C/C++ ХВ (не UB)
просто последний запихиваем на место удаленного и срезаем capacity
источник

G

Gerda in IT KPI C/C++ ХВ (не UB)
занимался я таким, когда листья из деревьев выкидывал
источник

TS

Till Schneider in IT KPI C/C++ ХВ (не UB)
Gerda
В каком смысле?
В прямом
источник

M😷

M 😷 in IT KPI C/C++ ХВ (не UB)
Gerda
занимался я таким, когда листья из деревьев выкидывал
Создатель 🙏
источник

YS

Y S in IT KPI C/C++ ХВ (не UB)
M 😷
Создатель 🙏
Что происходит
источник

YS

Y S in IT KPI C/C++ ХВ (не UB)
Произошёл УБ)
источник

TL

Tony Lutsenko in IT KPI C/C++ ХВ (не UB)
Ребят, возникла какая-то странная проблема, был бы благодарен за помощь.

Задача – создать класс "комплексное число" и перегрузить operator<<

Работаем в последней Visual Studio, Windows 10.
В файле complex0.h сделали namespace CN, в нём класс complex, в котором два приватных поля double Re, Im. В классе объявили два метода:

friend std::string to_string(const complex& c);
friend std::ostream& operator<<(std::ostream& os, const complex& c);

operator<< реализован в соседнем complex0.cpp так:

std::ostream& operator<<(std::ostream& os, const complex& c)
{
 os << CN::to_string(c);
 return os;
}

при компиляции 44 ошибки, из них единственное уведомление о нашем файле:

Выполняется компиляция ссылки на экземпляр шаблон функции "std::basic_ostream<char,std::char_traits<char>> &std::operator <<<char,std::char_traits<char>,std::allocator<char>>(std::basic_ostream<char,std::char_traits<char>> &,const std::basic_string<char,std::char_traits<char>,std::allocator<char>> &)" practice_11.7 D:\..\complex0.cpp

Откуда это вообще? Как нормально реализовать этот оператор?
источник

TL

Tony Lutsenko in IT KPI C/C++ ХВ (не UB)
причём статический анализатор вижуалки ошибки не выдаёт, только компилятор
источник

JC

Julian =) Coffee in IT KPI C/C++ ХВ (не UB)
ого, маєш гарний темплейт
источник

TL

Tony Lutsenko in IT KPI C/C++ ХВ (не UB)
То есть вместо того, чтобы сдвинуть в os созданный string, оно компилирует фигню через левый темплейт
источник

TL

Tony Lutsenko in IT KPI C/C++ ХВ (не UB)
и ругается на ошибки в файлах xstring
источник

YS

Y S in IT KPI C/C++ ХВ (не UB)
Tony Lutsenko
Ребят, возникла какая-то странная проблема, был бы благодарен за помощь.

Задача – создать класс "комплексное число" и перегрузить operator<<

Работаем в последней Visual Studio, Windows 10.
В файле complex0.h сделали namespace CN, в нём класс complex, в котором два приватных поля double Re, Im. В классе объявили два метода:

friend std::string to_string(const complex& c);
friend std::ostream& operator<<(std::ostream& os, const complex& c);

operator<< реализован в соседнем complex0.cpp так:

std::ostream& operator<<(std::ostream& os, const complex& c)
{
 os << CN::to_string(c);
 return os;
}

при компиляции 44 ошибки, из них единственное уведомление о нашем файле:

Выполняется компиляция ссылки на экземпляр шаблон функции "std::basic_ostream<char,std::char_traits<char>> &std::operator <<<char,std::char_traits<char>,std::allocator<char>>(std::basic_ostream<char,std::char_traits<char>> &,const std::basic_string<char,std::char_traits<char>,std::allocator<char>> &)" practice_11.7 D:\..\complex0.cpp

Откуда это вообще? Как нормально реализовать этот оператор?
А почему не c.to_string()?
источник