Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Kodirovsshik
16 / 16 / 7
Регистрация: 28.10.2016
Сообщений: 75
Завершенные тесты: 1
#1

Какого типа std::endl ? Как сделать так, чтобы функция могла принимать endl в качестве аргумента? - C++

06.04.2017, 19:36. Просмотров 397. Ответов 5
Метки с++ (Все метки)

Что надо указать в прототипе функции, чтобы можно передавать std::endl в качестве аргумента? Уже 3 часа голову ломаю! Помогите, прошу! Заранее спасибо!

P.s. Какая разница, зачем? Надо!
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.04.2017, 19:36
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Какого типа std::endl ? Как сделать так, чтобы функция могла принимать endl в качестве аргумента? (C++):

Ошибка в std::cout<<std::endl - C++
есть следующая задача: -создать класс множество целых чисел. перегрузить операторы для следующих операций: Ввода/вывода, объединения двух...

#include <listream>. Std. Endl - C++
#include &lt;conio.h&gt; #include &lt;lostream&gt; using std:: cout; using std:: endl; int main() {

Как переопределить функцию так, чтобы она не только могла принимать разные параметры, но и возвращать тоже разные? - C++
То есть я считаю несправедливым, если такое проканывает: void f () {;} void f (int) {;} а такое нет: void f (int) {;} int f...

std::endl; и std::cout"/n"; - одно и то же? - C++
Весь вопрос в теме.... std::endl; и std::cout&lt;&lt;&quot;/n&quot;; - одно и то же?

Есть ли в std, или где-нибудь ещё, константа для пустой строки (""), как endl (\n) для символа переноса? - C++
Раздражает писать так: return &quot;&quot;;

Чем отличается "\n" от std::endl? - C++
чем они отличаются?

5
Photofenix
60 / 60 / 12
Регистрация: 18.11.2016
Сообщений: 492
Завершенные тесты: 1
06.04.2017, 19:53 #2
std::endl; - перевод строки и очистка потока.
Имеете ввиду так?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <iostream>
#include <string>
#include <Windows.h>
 
 
void myfunc (std::string mystr){
    std::cout << "Вызов из функции: ";
    std::cout << mystr << std::endl;
}
 
int main(){
 
    SetConsoleCP (1251);
    SetConsoleOutputCP (1251);
 
    std::string str;
    std::cout << "Введите строку: ";
    std::cin >> str;
    myfunc (str);
    
    system ("pause");
    return 0;
}
0
nd2
2820 / 2390 / 851
Регистрация: 29.01.2016
Сообщений: 8,000
06.04.2017, 19:56 #3
Цитата Сообщение от Photofenix Посмотреть сообщение
Имеете ввиду так?
Ясно же написано:
Цитата Сообщение от Kodirovsshik Посмотреть сообщение
передавать std::endl в качестве аргумента
0
avgoor
967 / 601 / 130
Регистрация: 05.12.2015
Сообщений: 1,686
06.04.2017, 19:57 #4
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
Цитата Сообщение от Kodirovsshik Посмотреть сообщение
std::endl в качестве аргумента? Уже 3 часа голову ломаю!
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <iostream>
 
template<class _Elem, class _Traits>
void foo(std::basic_ostream<_Elem, _Traits>& os, std::basic_ostream<_Elem, _Traits>& (*param)(std::basic_ostream<_Elem, _Traits>&))
{
    os << param;
}
 
void bar(std::ostream& os, std::ostream&(*param)(std::ostream&)) // без шаблона, для char-овых потоков
{
    os << param;
}
 
int main()
{
    std::cout << "Hello,";
    foo(std::cout, std::endl);
    bar(std::cout, std::endl);
    std::cout << "world!";
}
1
Max Dark
шКодер самоучка
1873 / 1673 / 607
Регистрация: 09.10.2013
Сообщений: 3,718
Записей в блоге: 6
Завершенные тесты: 2
06.04.2017, 20:00 #5
Цитата Сообщение от Kodirovsshik Посмотреть сообщение
Какого типа std::endl
std::endl по сути является шаблоном функции
0
Kodirovsshik
16 / 16 / 7
Регистрация: 28.10.2016
Сообщений: 75
Завершенные тесты: 1
07.04.2017, 21:16  [ТС] #6
Цитата Сообщение от avgoor Посмотреть сообщение
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <iostream>
 
template<class _Elem, class _Traits>
void foo(std::basic_ostream<_Elem, _Traits>& os, std::basic_ostream<_Elem, _Traits>& (*param)(std::basic_ostream<_Elem, _Traits>&))
{
    os << param;
}
 
void bar(std::ostream& os, std::ostream&(*param)(std::ostream&)) // без шаблона, для char-овых потоков
{
    os << param;
}
 
int main()
{
    std::cout << "Hello,";
    foo(std::cout, std::endl);
    bar(std::cout, std::endl);
    std::cout << "world!";
}
Спасибо вам огромное!
0
07.04.2017, 21:16
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
07.04.2017, 21:16
Привет! Вот еще темы с ответами:

Как на последнем шагу удалить endl - C++
Как на последнем шагу удалить endl. Что бы в файле не было пустой строчки в конце

как count endl заменить на printf ? - C++
Всем добрый вечер , есть одна программа , там встречаются строчки . Собственно вопрос , как будут выглядеть эти строчки с использованием...

Как перехватить вывод в поток endl? - C++
Делаю систему логгирование в своей програмке. И вот возникла необходимость перехвата endl. Тоесть как только в поток передаеться endl,...

Как сделать, чтобы функция класса могла работать с обьектами другого класса - C++
есть класс к примеру class One и класс к примеру class Two нужно чтобы элемент функция класса One могла работать в обьектами класа...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru