Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > pl.comp.programming > #32018
| From | Roman Tyczka <noemail@because.no> |
|---|---|
| Newsgroups | pl.comp.programming |
| Subject | Re: Niezmienniki pętli |
| Date | 2018-11-19 09:22 +0100 |
| Organization | ATMAN - ATM S.A. |
| Message-ID | <1t0i612ilgawi.dlg@tyczka.com> (permalink) |
| References | (2 earlier) <d35b9c0f-333e-4cb8-9d83-e32eddcac124@googlegroups.com> <psp6q7$97o$1@node2.news.atman.pl> <6bea513b-1794-4d99-9380-931550599e51@googlegroups.com> <pss4d0$14n$1@node2.news.atman.pl> <35eabe3c-2a77-4a51-9f1c-ea2538d4ade2@googlegroups.com> |
On Sun, 18 Nov 2018 23:14:44 -0800 (PST), Maciej Sobczak wrote:
> Wystarczy rozszerzyć składnię asserta. W tej chwili assert musi dostać jedno wyrażenie, ale można by go rozszerzyć tak, żeby akceptował dowolne fragmenty kodu. W niektórych językach to się robi o tyle łatwiejsze, że wszystko jest albo może być wyrażeniem, również pętla While czy cokolwiek innego - wtedy do takiego asserta można wsadzić dowolny fragment kodu, nawet z własnymi definicjami zmiennych wykorzystanych w środku. Ale w C++ chyba niewiele trzeba, żeby to osiągnąć, np. z taką składnią:
>
> assert(dowolnyfragmentkodu, wynik_bool);
>
> I użyć tego tak:
>
> assert(
> int i; // albo inne definicje
> int j = x; // x jest na zewnątrz, ale widać go tutaj
>
> while (orzemy_jak_możemy)
> {
> // obliczenia, wywołania funkcji, itd.
> ...
> },
>
> x > 0 && i < 10 // jakiś ostateczny warunek
> );
>
> I wtedy assert, tylko w trybie debug, wykonuje ten kod a na końcu sprawdza warunek logiczny z drugiego swojego argumentu. W trybie release nic nie robi.
>
> Kto zaproponuje definicję makra assert o takich zdolnościach?
Makra nie zaproponuję, ale wrzucę ciekawostkę.
W języku Solidity, używanym do smart kontraktów w sieci Ethereum
(kryptowaluty) stosuje się coś co się nazywa modifier, przykładowo dopisuje
się w klasie modifier isOwner, który sprawdza czy kontrakt wywołał jego
właściciel i tenże modifier dopisuje się do pozostałych metod, które mają
go sprawdzać przed wywołaniem, w przykładzie robi to metoda getData():
[...]
modifier isOwner {
require(msg.sender == owner);
}
function getData() public isOwner {
return data
}
[...]
ps. require to odpowiednik asserta
--
pozdrawiam
Roman Tyczka
Back to pl.comp.programming | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
Niezmienniki pętli Maciej Sobczak <see.my.homepage@gmail.com> - 2018-11-16 00:27 -0800
Re: Niezmienniki pętli queequeg@trust.no1 (Queequeg) - 2018-11-16 15:22 +0000
Re: Niezmienniki pętli AK <nobody@nowhere.net> - 2018-11-16 17:18 +0100
Re: Niezmienniki pętli szykcech@gmail.com - 2018-11-16 07:48 -0800
Re: Niezmienniki pętli szykcech@gmail.com - 2018-11-16 07:50 -0800
Re: Niezmienniki pętli queequeg@trust.no1 (Queequeg) - 2018-11-16 19:14 +0000
Re: Niezmienniki pętli szykcech@gmail.com - 2018-11-16 11:40 -0800
Re: Niezmienniki pętli queequeg@trust.no1 (Queequeg) - 2018-11-16 20:05 +0000
Re: Niezmienniki pętli szykcech@gmail.com - 2018-11-17 07:59 -0800
Re: Niezmienniki pętli queequeg@trust.no1 (Queequeg) - 2018-11-18 00:02 +0000
Re: Niezmienniki pętli Maciej Sobczak <see.my.homepage@gmail.com> - 2018-11-16 14:51 -0800
Re: Niezmienniki pętli queequeg@trust.no1 (Queequeg) - 2018-11-19 09:37 +0000
Re: Niezmienniki pętli fir <profesor.fir@gmail.com> - 2018-11-18 01:10 -0800
Re: Niezmienniki pętli fir <profesor.fir@gmail.com> - 2018-11-18 01:28 -0800
Re: Niezmienniki pętli godek.maciek@gmail.com - 2018-11-16 11:51 -0800
Re: Niezmienniki pętli Maciej Sobczak <see.my.homepage@gmail.com> - 2018-11-16 14:55 -0800
Re: Niezmienniki pętli Sebastian Biały <heby@poczta.onet.pl> - 2018-11-17 14:58 +0100
Re: Niezmienniki pętli Maciej Sobczak <see.my.homepage@gmail.com> - 2018-11-17 15:10 -0800
Re: Niezmienniki pętli AK <nobody@nowhere.net> - 2018-11-18 09:58 +0100
Re: Niezmienniki pętli Sebastian Biały <heby@poczta.onet.pl> - 2018-11-18 17:35 +0100
Re: Niezmienniki pętli Maciej Sobczak <see.my.homepage@gmail.com> - 2018-11-18 23:14 -0800
Re: Niezmienniki pętli Roman Tyczka <noemail@because.no> - 2018-11-19 09:22 +0100
Re: Niezmienniki pętli godek.maciek@gmail.com - 2018-11-19 08:15 -0800
Re: Niezmienniki pętli godek.maciek@gmail.com - 2018-11-19 10:45 -0800
Re: Niezmienniki pętli Sebastian Biały <heby@poczta.onet.pl> - 2018-11-22 18:50 +0100
Re: Niezmienniki pętli godek.maciek@gmail.com - 2018-11-19 10:49 -0800
Re: Niezmienniki pętli szykcech@gmail.com - 2018-11-19 12:18 -0800
Re: Niezmienniki pętli queequeg@trust.no1 (Queequeg) - 2018-11-19 20:44 +0000
Re: Niezmienniki pętli fir <profesor.fir@gmail.com> - 2018-11-19 13:10 -0800
Re: Niezmienniki pętli fir <profesor.fir@gmail.com> - 2018-11-19 13:16 -0800
Re: Niezmienniki pętli queequeg@trust.no1 (Queequeg) - 2018-11-20 09:43 +0000
Re: Niezmienniki pętli fir <profesor.fir@gmail.com> - 2018-11-20 01:58 -0800
Re: Niezmienniki pętli godek.maciek@gmail.com - 2018-11-20 14:27 -0800
Re: Niezmienniki pętli queequeg@trust.no1 (Queequeg) - 2018-11-21 10:12 +0000
Re: Niezmienniki pętli godek.maciek@gmail.com - 2018-11-21 11:35 -0800
Re: Niezmienniki pętli queequeg@trust.no1 (Queequeg) - 2018-11-21 21:10 +0000
Re: Niezmienniki pętli fir <profesor.fir@gmail.com> - 2018-11-21 02:36 -0800
Re: Niezmienniki pętli godek.maciek@gmail.com - 2018-11-19 14:12 -0800
Re: Niezmienniki pętli AK <nobody@nowhere.net> - 2018-11-20 00:20 +0100
Re: Niezmienniki pętli queequeg@trust.no1 (Queequeg) - 2018-11-20 09:35 +0000
Re: Niezmienniki pętli AK <nobody@nowhere.net> - 2018-11-20 12:00 +0100
Re: Niezmienniki pętli szykcech@gmail.com - 2018-11-19 20:37 -0800
Re: Niezmienniki pętli godek.maciek@gmail.com - 2018-11-20 13:46 -0800
Re: Niezmienniki pętli fir <profesor.fir@gmail.com> - 2018-11-20 01:46 -0800
Re: Niezmienniki pętli fir <profesor.fir@gmail.com> - 2018-11-20 12:52 -0800
Re: Niezmienniki pętli fir <profesor.fir@gmail.com> - 2018-11-20 13:16 -0800
Re: Niezmienniki pętli Maciej Sobczak <see.my.homepage@gmail.com> - 2018-11-20 06:07 -0800
Re: Niezmienniki pętli AK <nobody@nowhere.net> - 2018-11-20 17:54 +0100
Re: Niezmienniki pętli Maciej Sobczak <see.my.homepage@gmail.com> - 2018-11-20 23:16 -0800
Re: Niezmienniki pętli AK <nobody@nowhere.net> - 2018-11-21 15:54 +0100
Re: Niezmienniki pętli AK <nobody@nowhere.net> - 2018-11-21 16:07 +0100
Re: Niezmienniki pętli Maciej Sobczak <see.my.homepage@gmail.com> - 2018-11-21 13:48 -0800
Re: Niezmienniki pętli AK <nobody@nowhere.net> - 2018-11-22 16:08 +0100
Re: Niezmienniki pętli AK <nobody@nowhere.net> - 2018-11-20 00:00 +0100
Re: Niezmienniki pętli Wojciech Muła <wojtek.mula@gmail.com> - 2018-11-22 13:53 -0800
Re: Niezmienniki pętli AK <nobody@nowhere.net> - 2018-11-22 23:25 +0100
Re: Niezmienniki pętli AK <nobody@nowhere.net> - 2018-11-23 00:41 +0100
Re: Niezmienniki pętli AK <nobody@nowhere.net> - 2018-11-23 00:43 +0100
Re: Niezmienniki pętli szykcech@gmail.com - 2018-11-22 22:33 -0800
Re: Niezmienniki pętli AK <nobody@nowhere.net> - 2018-11-23 10:34 +0100
Re: Niezmienniki pętli Maciej Sobczak <see.my.homepage@gmail.com> - 2018-11-23 05:46 -0800
Re: Niezmienniki pętli AK <nobody@nowhere.net> - 2018-11-23 15:39 +0100
Re: Niezmienniki pętli AK <nobody@nowhere.net> - 2018-11-23 15:42 +0100
Re: Niezmienniki pętli AK <nobody@nowhere.net> - 2018-11-23 15:47 +0100
Re: Niezmienniki pętli Wojciech Muła <wojtek.mula@gmail.com> - 2018-11-23 10:54 -0800
Re: Niezmienniki pętli Borneq <borneq@antyspam.hidden.pl> - 2018-12-01 15:15 +0100
Re: Niezmienniki pętli Wojciech Muła <wojtek.mula@gmail.com> - 2018-12-01 11:50 -0800
Re: Niezmienniki pętli Borneq <borneq@antyspam.hidden.pl> - 2018-12-02 13:52 +0100
Re: Niezmienniki pętli Maciej Sobczak <see.my.homepage@gmail.com> - 2018-11-24 12:20 -0800
Re: Niezmienniki pętli AK <nobody@nowhere.net> - 2018-11-23 15:53 +0100
Re: Niezmienniki pętli Maciej Sobczak <see.my.homepage@gmail.com> - 2018-11-24 12:05 -0800
Re: Niezmienniki pętli Wojciech Muła <wojtek.mula@gmail.com> - 2018-11-26 02:01 -0800
Re: Niezmienniki pętli szykcech@gmail.com - 2018-11-23 08:42 -0800
Re: Niezmienniki pętli AK <nobody@nowhere.net> - 2018-11-23 19:42 +0100
Re: Niezmienniki pętli AK <nobody@nowhere.net> - 2018-11-23 19:43 +0100
Re: Niezmienniki pętli Wojciech Muła <wojtek.mula@gmail.com> - 2018-11-22 23:00 -0800
Re: Niezmienniki pętli AK <nobody@nowhere.net> - 2018-11-23 10:38 +0100
Re: Niezmienniki pętli Wojciech Muła <wojtek.mula@gmail.com> - 2018-11-23 04:08 -0800
Re: Niezmienniki pętli Wojciech Muła <wojtek.mula@gmail.com> - 2018-11-23 04:10 -0800
Re: Niezmienniki pętli AK <nobody@nowhere.net> - 2018-11-23 15:33 +0100
Re: Niezmienniki pętli Maciej Sobczak <see.my.homepage@gmail.com> - 2018-11-20 05:38 -0800
Re: Niezmienniki pętli godek.maciek@gmail.com - 2018-11-21 11:32 -0800
Re: Niezmienniki pętli Maciej Sobczak <see.my.homepage@gmail.com> - 2018-11-21 13:28 -0800
Re: Niezmienniki pętli godek.maciek@gmail.com - 2018-11-21 14:04 -0800
Re: Niezmienniki pętli Maciej Sobczak <see.my.homepage@gmail.com> - 2018-11-22 02:31 -0800
Re: Niezmienniki pętli fir <profesor.fir@gmail.com> - 2018-11-22 06:22 -0800
Re: Niezmienniki pętli Sebastian Biały <heby@poczta.onet.pl> - 2018-11-22 18:53 +0100
Re: Niezmienniki pętli queequeg@trust.no1 (Queequeg) - 2018-11-19 09:45 +0000
Re: Niezmienniki pętli Maciej Sobczak <see.my.homepage@gmail.com> - 2018-11-20 05:29 -0800
Re: Niezmienniki pętli queequeg@trust.no1 (Queequeg) - 2018-11-20 22:26 +0000
Re: Niezmienniki pętli Maciej Sobczak <see.my.homepage@gmail.com> - 2018-11-29 00:08 -0800
csiph-web